** Create Figure 4, 5: Effects of Russian Frames and sourcing, by issue type

		** 1. section: Effects of Russian Frame only, FOREIGN issues only (matrix: matrix1_foreign)
		** 2. section: Effects of Western Frame only, FOREIGN issues only (matrix: matrix2_foreign)
		** 3. section: Effects of Russian Frame + Sourcing, FOREIGN issues only (matrix: matrix1_sourcing_foreign)
		** 4. section: Effects of Western Frame + Sourcing, FOREIGN issues only (matrix: matrix2_sourcing_foreign)
		** 5. section: Effects of Russian Frame only, DOMESTIC/IO issues only (matrix: matrix1_domesticIO)
		** 6. section: Effects of Western Frame only, DOMESTIC/IO issues only (matrix: matrix2_domesticIO)
		** 7. section: Effects of Russian Frame + Sourcing, DOMESTIC/IO issues only (matrix: matrix1_sourcing_domesticIO)
		** 8. section: Effects of Western Frame + Sourcing, DOMESTIC/IO issues only (matrix: matrix2_sourcing_domesticIO)
		** 9. section: Plot matrixes

use  data_long.dta, clear


*Define locals

local controls1 "age female educ_secondary educ_prof_high educ_acad_high i.exp"
local controls2a "authoritarian conspiracy_sum	know_sum	pred_bundes_gov_r	pred_Russia_r	" // for total sample
local controls2b "				conspiracy_sum	know_sum	pred_bundes_gov_r	pred_Russia_r	" // for for authoritarian beliefs
local controls2c "authoritarian					know_sum	pred_bundes_gov_r	pred_Russia_r	" // for conspiracy beliefs
local controls2d "authoritarian conspiracy_sum				pred_bundes_gov_r	pred_Russia_r	" // for knowledge
local controls2e "authoritarian conspiracy_sum know_sum 						pred_Russia_r	" // for att twd German gov
local controls2f "authoritarian conspiracy_sum know_sum		pred_bundes_gov_r					" // for att twd Russia


***************************************************************

*** 1. Russian frame, FOREIGN issues only

***************************************************************

matrix matrix1_foreign = J(11,3,.) // 3 column for lower ci, estimate, upper ci

*Average effect, experiments on foreign policy
mixed poolexp i.treat_exp `controls1' `controls2a'	|| lfdn: if exp_issuetype == 1
mat r=r(table)
matrix list r
matrix matrix1_foreign[1, 1] = r[1,2]
matrix matrix1_foreign[1, 2] = r[5,2]
matrix matrix1_foreign[1, 3] = r[6,2]
matrix list matrix1_foreign

*By authoritarian beliefs, experiments on foreign policy
mixed poolexp i.treat_exp##c.authoritarian `controls1' `controls2b'		|| lfdn: if exp_issuetype == 1
margins, dydx(2.treat_exp) at(authoritarian=(.83 .29)) // predicted for 5 and 95 percent percentile
mat r=r(table)
matrix list r
matrix matrix1_foreign[2, 1] = r[1,3] // strong authoritarian beliefs
matrix matrix1_foreign[2, 2] = r[5,3]
matrix matrix1_foreign[2, 3] = r[6,3]
matrix matrix1_foreign[3, 1] = r[1,4] // weak authoritarian beliefs
matrix matrix1_foreign[3, 2] = r[5,4]
matrix matrix1_foreign[3, 3] = r[6,4]
matrix list matrix1_foreign

*By conspiracy theory beliefs, experiments on foreign policy
mixed poolexp i.treat_exp##c.conspiracy_sum `controls1' `controls2c'		|| lfdn: if exp_issuetype == 1
margins, dydx(2.treat_exp) at(conspiracy_sum=(.8 .05)) // predicted for 5 and 95 percent percentile
mat r=r(table)
matrix list r
matrix matrix1_foreign[4, 1] = r[1,3] // high conspiracy theory score
matrix matrix1_foreign[4, 2] = r[5,3]
matrix matrix1_foreign[4, 3] = r[6,3]
matrix matrix1_foreign[5, 1] = r[1,4] // low conspiracy theory score
matrix matrix1_foreign[5, 2] = r[5,4]
matrix matrix1_foreign[5, 3] = r[6,4]
matrix list matrix1_foreign

*By political knowledge, experiments on foreign policy
mixed poolexp i.treat_exp##c.know_sum `controls1' `controls2d'	|| lfdn: if exp_issuetype == 1
margins, dydx(2.treat_exp) at(know_sum=(0 .875)) // predicted for 5 and 95 percent percentile
mat r=r(table)
matrix list r
matrix matrix1_foreign[6, 1] = r[1,3] // high political knowledge
matrix matrix1_foreign[6, 2] = r[5,3]
matrix matrix1_foreign[6, 3] = r[6,3]
matrix matrix1_foreign[7, 1] = r[1,4] // low political knowledge
matrix matrix1_foreign[7, 2] = r[5,4]
matrix matrix1_foreign[7, 3] = r[6,4]
matrix list matrix1_foreign

*By attitudes toward German government, experiments on foreign policy
mixed poolexp i.treat_exp##c.pred_bundes_gov_r `controls1' `controls2e'		|| lfdn: if exp_issuetype == 1
margins, dydx(2.treat_exp) at(pred_bundes_gov_r=(0 .9)) // predicted for 5 and 95 percent percentile
mat r=r(table)
matrix list r
matrix matrix1_foreign[8, 1] = r[1,3] // government opponents
matrix matrix1_foreign[8, 2] = r[5,3]
matrix matrix1_foreign[8, 3] = r[6,3]
matrix matrix1_foreign[9, 1] = r[1,4] // government supporters
matrix matrix1_foreign[9, 2] = r[5,4]
matrix matrix1_foreign[9, 3] = r[6,4]
matrix list matrix1_foreign

*By attitudes toward Russia, experiments on foreign policy
mixed poolexp i.treat_exp##c.pred_Russia_r `controls1' `controls2f'		|| lfdn: if exp_issuetype == 1
margins, dydx(2.treat_exp) at(pred_Russia_r=(.8 .0 )) // predicted for 5 and 95 percent percentile
mat r=r(table)
matrix list r
matrix matrix1_foreign[10, 1] = r[1,3] // positive attitude toward Russia 
matrix matrix1_foreign[10, 2] = r[5,3]
matrix matrix1_foreign[10, 3] = r[6,3]
matrix matrix1_foreign[11, 1] = r[1,4] // negative attitude toward Russia  
matrix matrix1_foreign[11, 2] = r[5,4]
matrix matrix1_foreign[11, 3] = r[6,4]
matrix list matrix1_foreign


***************************************************************

*** 2. Western frame, FOREIGN issues only

***************************************************************

matrix matrix2_foreign = J(11,3,.) // 3 column for lower ci, estimate, upper ci

*Average effect, experiments on foreign policy
mixed poolexp i.treat_exp `controls1' `controls2a'		|| lfdn: if exp_issuetype == 1
mat r=r(table)
matrix list r
matrix matrix2_foreign[1, 1] = r[1,4]
matrix matrix2_foreign[1, 2] = r[5,4]
matrix matrix2_foreign[1, 3] = r[6,4]
matrix list matrix2_foreign

*By authoritarian beliefs, experiments on foreign policy
mixed poolexp i.treat_exp##c.authoritarian `controls1' `controls2b'		|| lfdn: if exp_issuetype == 1
margins, dydx(4.treat_exp) at(authoritarian=(.83 .29)) // predicted for 5 and 95 percent percentile
mat r=r(table)
matrix list r
matrix matrix2_foreign[2, 1] = r[1,3] // strong authoritarian beliefs
matrix matrix2_foreign[2, 2] = r[5,3]
matrix matrix2_foreign[2, 3] = r[6,3]
matrix matrix2_foreign[3, 1] = r[1,4] // weak authoritarian beliefs
matrix matrix2_foreign[3, 2] = r[5,4]
matrix matrix2_foreign[3, 3] = r[6,4]
matrix list matrix2_foreign

*By conspiracy theory beliefs, experiments on foreign policy
mixed poolexp i.treat_exp##c.conspiracy_sum `controls1' `controls2c'		 || lfdn: if exp_issuetype == 1
margins, dydx(4.treat_exp) at(conspiracy_sum=(.8 .05)) // predicted for 5 and 95 percent percentile
mat r=r(table)
matrix list r
matrix matrix2_foreign[4, 1] = r[1,3] // high conspiracy theory score
matrix matrix2_foreign[4, 2] = r[5,3]
matrix matrix2_foreign[4, 3] = r[6,3]
matrix matrix2_foreign[5, 1] = r[1,4] // low conspiracy theory score
matrix matrix2_foreign[5, 2] = r[5,4]
matrix matrix2_foreign[5, 3] = r[6,4]
matrix list matrix2_foreign

*By political knowledge, experiments on foreign policy
mixed poolexp i.treat_exp##c.know_sum `controls1' `controls2d'		|| lfdn: if exp_issuetype == 1
margins, dydx(4.treat_exp) at(know_sum=(0 .875)) // predicted for 5 and 95 percent percentile
mat r=r(table)
matrix list r
matrix matrix2_foreign[6, 1] = r[1,3] // high political knowledge
matrix matrix2_foreign[6, 2] = r[5,3]
matrix matrix2_foreign[6, 3] = r[6,3]
matrix matrix2_foreign[7, 1] = r[1,4] // low political knowledge
matrix matrix2_foreign[7, 2] = r[5,4]
matrix matrix2_foreign[7, 3] = r[6,4]
matrix list matrix2_foreign

*By attitudes toward German government, experiments on foreign policy
mixed poolexp i.treat_exp##c.pred_bundes_gov_r `controls1' `controls2e'		 || lfdn: if exp_issuetype == 1
margins, dydx(4.treat_exp) at(pred_bundes_gov_r=(0 .9)) // predicted for 5 and 95 percent percentile
mat r=r(table)
matrix list r
matrix matrix2_foreign[8, 1] = r[1,3] // government opponents
matrix matrix2_foreign[8, 2] = r[5,3]
matrix matrix2_foreign[8, 3] = r[6,3]
matrix matrix2_foreign[9, 1] = r[1,4] // government supporters
matrix matrix2_foreign[9, 2] = r[5,4]
matrix matrix2_foreign[9, 3] = r[6,4]
matrix list matrix2_foreign

*By attitudes toward Russia, experiments on foreign policy
mixed poolexp i.treat_exp##c.pred_Russia_r age `controls1' `controls2f'		|| lfdn: if exp_issuetype == 1
margins, dydx(4.treat_exp) at(pred_Russia_r=(.8 .0 )) // predicted for 5 and 95 percent percentile
mat r=r(table)
matrix list r
matrix matrix2_foreign[10, 1] = r[1,3] // positive attitude toward Russia 
matrix matrix2_foreign[10, 2] = r[5,3]
matrix matrix2_foreign[10, 3] = r[6,3]
matrix matrix2_foreign[11, 1] = r[1,4] // negative attitude toward Russia  
matrix matrix2_foreign[11, 2] = r[5,4]
matrix matrix2_foreign[11, 3] = r[6,4]
matrix list matrix2_foreign


***************************************************************

*** 3. Russian frame + Sourcing, FOREIGN issues only

***************************************************************

matrix matrix1_source_foreign = J(11,3,.) // 3 column for lower ci, estimate, upper ci

*Average effect, experiments on foreign policy
mixed poolexp i.treat_exp age `controls1' `controls2a'		|| lfdn: if exp_issuetype == 1
mat r=r(table)
matrix list r
matrix matrix1_source_foreign[1, 1] = r[1,3]
matrix matrix1_source_foreign[1, 2] = r[5,3]
matrix matrix1_source_foreign[1, 3] = r[6,3]
matrix list matrix1_source_foreign

*By authoritarian beliefs, experiments on foreign policy
mixed poolexp i.treat_exp##c.authoritarian `controls1' `controls2b'		|| lfdn: if exp_issuetype == 1
margins, dydx(3.treat_exp) at(authoritarian=(.83 .29)) // predicted for 5 and 95 percent percentile
mat r=r(table)
matrix list r
matrix matrix1_source_foreign[2, 1] = r[1,3] // strong authoritarian beliefs
matrix matrix1_source_foreign[2, 2] = r[5,3]
matrix matrix1_source_foreign[2, 3] = r[6,3]
matrix matrix1_source_foreign[3, 1] = r[1,4] // weak authoritarian beliefs
matrix matrix1_source_foreign[3, 2] = r[5,4]
matrix matrix1_source_foreign[3, 3] = r[6,4]
matrix list matrix2_foreign

*By conspiracy theory beliefs, experiments on foreign policy
mixed poolexp i.treat_exp##c.conspiracy_sum `controls1' `controls2c'		|| lfdn: if exp_issuetype == 1
margins, dydx(3.treat_exp) at(conspiracy_sum=(.8 .05)) // predicted for 5 and 95 percent percentile
mat r=r(table)
matrix list r
matrix matrix1_source_foreign[4, 1] = r[1,3] // high conspiracy theory score
matrix matrix1_source_foreign[4, 2] = r[5,3]
matrix matrix1_source_foreign[4, 3] = r[6,3]
matrix matrix1_source_foreign[5, 1] = r[1,4] // low conspiracy theory score
matrix matrix1_source_foreign[5, 2] = r[5,4]
matrix matrix1_source_foreign[5, 3] = r[6,4]
matrix list matrix1_source_foreign

*By political knowledge, experiments on foreign policy
mixed poolexp i.treat_exp##c.know_sum age `controls1' `controls2d'		|| lfdn: if exp_issuetype == 1
margins, dydx(3.treat_exp) at(know_sum=(0 .875)) // predicted for 5 and 95 percent percentile
mat r=r(table)
matrix list r
matrix matrix1_source_foreign[6, 1] = r[1,3] // high political knowledge
matrix matrix1_source_foreign[6, 2] = r[5,3]
matrix matrix1_source_foreign[6, 3] = r[6,3]
matrix matrix1_source_foreign[7, 1] = r[1,4] // low political knowledge
matrix matrix1_source_foreign[7, 2] = r[5,4]
matrix matrix1_source_foreign[7, 3] = r[6,4]
matrix list matrix1_source_foreign

*By attitudes toward German government, experiments on foreign policy
mixed poolexp i.treat_exp##c.pred_bundes_gov_r `controls1' `controls2e'		|| lfdn: if exp_issuetype == 1
margins, dydx(3.treat_exp) at(pred_bundes_gov_r=(0 .9)) // predicted for 5 and 95 percent percentile
mat r=r(table)
matrix list r
matrix matrix1_source_foreign[8, 1] = r[1,3] // government opponents
matrix matrix1_source_foreign[8, 2] = r[5,3]
matrix matrix1_source_foreign[8, 3] = r[6,3]
matrix matrix1_source_foreign[9, 1] = r[1,4] // government supporters
matrix matrix1_source_foreign[9, 2] = r[5,4]
matrix matrix1_source_foreign[9, 3] = r[6,4]
matrix list matrix1_source_foreign

*By attitudes toward Russia, experiments on foreign policy
mixed poolexp i.treat_exp##c.pred_Russia_r `controls1' `controls2f'		|| lfdn: if exp_issuetype == 1
margins, dydx(3.treat_exp) at(pred_Russia_r=(.8 .0 )) // predicted for 5 and 95 percent percentile
mat r=r(table)
matrix list r
matrix matrix1_source_foreign[10, 1] = r[1,3] // positive attitude toward Russia 
matrix matrix1_source_foreign[10, 2] = r[5,3]
matrix matrix1_source_foreign[10, 3] = r[6,3]
matrix matrix1_source_foreign[11, 1] = r[1,4] // negative attitude toward Russia  
matrix matrix1_source_foreign[11, 2] = r[5,4]
matrix matrix1_source_foreign[11, 3] = r[6,4]
matrix list matrix1_source_foreign



***************************************************************

*** 4. Western frame + Sourcing, FOREIGN issues only

***************************************************************

matrix matrix2_source_foreign = J(11,3,.) // 3 column for lower ci, estimate, upper ci

*Average effect, experiments on foreign policy
mixed poolexp i.treat_exp `controls1' `controls2a'		|| lfdn: if exp_issuetype == 1
mat r=r(table)
matrix list r
matrix matrix2_source_foreign[1, 1] = r[1,5]
matrix matrix2_source_foreign[1, 2] = r[5,5]
matrix matrix2_source_foreign[1, 3] = r[6,5]
matrix list matrix2_source_foreign

*By authoritarian beliefs, experiments on foreign policy
mixed poolexp i.treat_exp##c.authoritarian `controls1' `controls2b'		|| lfdn: if exp_issuetype == 1
margins, dydx(5.treat_exp) at(authoritarian=(.83 .29)) // predicted for 5 and 95 percent percentile
mat r=r(table)
matrix list r
matrix matrix2_source_foreign[2, 1] = r[1,3] // strong authoritarian beliefs
matrix matrix2_source_foreign[2, 2] = r[5,3]
matrix matrix2_source_foreign[2, 3] = r[6,3]
matrix matrix2_source_foreign[3, 1] = r[1,4] // weak authoritarian beliefs
matrix matrix2_source_foreign[3, 2] = r[5,4]
matrix matrix2_source_foreign[3, 3] = r[6,4]
matrix list matrix2_source_foreign

*By conspiracy theory beliefs, experiments on foreign policy
mixed poolexp i.treat_exp##c.conspiracy_sum `controls1' `controls2c'		|| lfdn: if exp_issuetype == 1
margins, dydx(5.treat_exp) at(conspiracy_sum=(.8 .05)) // predicted for 5 and 95 percent percentile
mat r=r(table)
matrix list r
matrix matrix2_source_foreign[4, 1] = r[1,3] // high conspiracy theory score
matrix matrix2_source_foreign[4, 2] = r[5,3]
matrix matrix2_source_foreign[4, 3] = r[6,3]
matrix matrix2_source_foreign[5, 1] = r[1,4] // low conspiracy theory score
matrix matrix2_source_foreign[5, 2] = r[5,4]
matrix matrix2_source_foreign[5, 3] = r[6,4]
matrix list matrix2_source_foreign

*By political knowledge, experiments on foreign policy
mixed poolexp i.treat_exp##c.know_sum `controls1' `controls2d'		|| lfdn: if exp_issuetype == 1
margins, dydx(5.treat_exp) at(know_sum=(0 .875)) // predicted for 5 and 95 percent percentile
mat r=r(table)
matrix list r
matrix matrix2_source_foreign[6, 1] = r[1,3] // high political knowledge
matrix matrix2_source_foreign[6, 2] = r[5,3]
matrix matrix2_source_foreign[6, 3] = r[6,3]
matrix matrix2_source_foreign[7, 1] = r[1,4] // low political knowledge
matrix matrix2_source_foreign[7, 2] = r[5,4]
matrix matrix2_source_foreign[7, 3] = r[6,4]
matrix list matrix2_source_foreign

*By attitudes toward German government, experiments on foreign policy
mixed poolexp i.treat_exp##c.pred_bundes_gov_r `controls1' `controls2e'		|| lfdn: if exp_issuetype == 1
margins, dydx(5.treat_exp) at(pred_bundes_gov_r=(0 .9)) // predicted for 5 and 95 percent percentile
mat r=r(table)
matrix list r
matrix matrix2_source_foreign[8, 1] = r[1,3] // government opponents
matrix matrix2_source_foreign[8, 2] = r[5,3]
matrix matrix2_source_foreign[8, 3] = r[6,3]
matrix matrix2_source_foreign[9, 1] = r[1,4] // government supporters
matrix matrix2_source_foreign[9, 2] = r[5,4]
matrix matrix2_source_foreign[9, 3] = r[6,4]
matrix list matrix2_source_foreign

*By attitudes toward Russia, experiments on foreign policy
mixed poolexp i.treat_exp##c.pred_Russia_r `controls1' `controls2f'		|| lfdn: if exp_issuetype == 1
margins, dydx(5.treat_exp) at(pred_Russia_r=(.8 .0 )) // predicted for 5 and 95 percent percentile
mat r=r(table)
matrix list r
matrix matrix2_source_foreign[10, 1] = r[1,3] // positive attitude toward Russia 
matrix matrix2_source_foreign[10, 2] = r[5,3]
matrix matrix2_source_foreign[10, 3] = r[6,3]
matrix matrix2_source_foreign[11, 1] = r[1,4] // negative attitude toward Russia  
matrix matrix2_source_foreign[11, 2] = r[5,4]
matrix matrix2_source_foreign[11, 3] = r[6,4]
matrix list matrix2_source_foreign















***************************************************************

*** 5. Russian frame, DOMESTIC POLICY / IO ONLY

***************************************************************

matrix matrix1_domesticIO = J(11,3,.) // 3 column for lower ci, estimate, upper ci

*Average effect, experiments on domestic policy / IOs
mixed poolexp i.treat_exp `controls1' `controls2a'		|| lfdn: if exp_issuetype == 0
mat r=r(table)
matrix list r
matrix matrix1_domesticIO[1, 1] = r[1,2]
matrix matrix1_domesticIO[1, 2] = r[5,2]
matrix matrix1_domesticIO[1, 3] = r[6,2]
matrix list matrix1_domesticIO

*By authoritarian beliefs, experiments on domestic policy / IOs
mixed poolexp i.treat_exp##c.authoritarian `controls1' `controls2b'		|| lfdn: if exp_issuetype == 0
margins, dydx(2.treat_exp) at(authoritarian=(.83 .29)) // predicted for 5 and 95 percent percentile
mat r=r(table)
matrix list r
matrix matrix1_domesticIO[2, 1] = r[1,3] // strong authoritarian beliefs
matrix matrix1_domesticIO[2, 2] = r[5,3]
matrix matrix1_domesticIO[2, 3] = r[6,3]
matrix matrix1_domesticIO[3, 1] = r[1,4] // weak authoritarian beliefs
matrix matrix1_domesticIO[3, 2] = r[5,4]
matrix matrix1_domesticIO[3, 3] = r[6,4]
matrix list matrix1_domesticIO

*By conspiracy theory beliefs, experiments on domestic policy / IOs
mixed poolexp i.treat_exp##c.conspiracy_sum `controls1' `controls2c'		|| lfdn: pred_Russia_r if exp_issuetype == 0
margins, dydx(2.treat_exp) at(conspiracy_sum=(.8 .05)) // predicted for 5 and 95 percent percentile
mat r=r(table)
matrix list r
matrix matrix1_domesticIO[4, 1] = r[1,3] // high conspiracy theory score
matrix matrix1_domesticIO[4, 2] = r[5,3]
matrix matrix1_domesticIO[4, 3] = r[6,3]
matrix matrix1_domesticIO[5, 1] = r[1,4] // low conspiracy theory score
matrix matrix1_domesticIO[5, 2] = r[5,4]
matrix matrix1_domesticIO[5, 3] = r[6,4]
matrix list matrix1_domesticIO

*By political knowledge, experiments on domestic policy / IOs
mixed poolexp i.treat_exp##c.know_sum `controls1' `controls2d'		|| lfdn: if exp_issuetype == 0
margins, dydx(2.treat_exp) at(know_sum=(0 .875)) // predicted for 5 and 95 percent percentile
mat r=r(table)
matrix list r
matrix matrix1_domesticIO[6, 1] = r[1,3] // high political knowledge
matrix matrix1_domesticIO[6, 2] = r[5,3]
matrix matrix1_domesticIO[6, 3] = r[6,3]
matrix matrix1_domesticIO[7, 1] = r[1,4] // low political knowledge
matrix matrix1_domesticIO[7, 2] = r[5,4]
matrix matrix1_domesticIO[7, 3] = r[6,4]
matrix list matrix1_domesticIO

*By attitudes toward German government, experiments on domestic policy / IOs
mixed poolexp i.treat_exp##c.pred_bundes_gov_r `controls1' `controls2e'		|| lfdn: if exp_issuetype == 0
margins, dydx(2.treat_exp) at(pred_bundes_gov_r=(0 .9)) // predicted for 5 and 95 percent percentile
mat r=r(table)
matrix list r
matrix matrix1_domesticIO[8, 1] = r[1,3] // government opponents
matrix matrix1_domesticIO[8, 2] = r[5,3]
matrix matrix1_domesticIO[8, 3] = r[6,3]
matrix matrix1_domesticIO[9, 1] = r[1,4] // government supporters
matrix matrix1_domesticIO[9, 2] = r[5,4]
matrix matrix1_domesticIO[9, 3] = r[6,4]
matrix list matrix1_domesticIO

*By attitudes toward Russia, experiments on domestic policy / IOs
mixed poolexp i.treat_exp##c.pred_Russia_r `controls1' `controls2f'   || lfdn: if exp_issuetype == 0
margins, dydx(2.treat_exp) at(pred_Russia_r=(.8 .0 )) // predicted for 5 and 95 percent percentile
mat r=r(table)
matrix list r
matrix matrix1_domesticIO[10, 1] = r[1,3] // positive attitude toward Russia 
matrix matrix1_domesticIO[10, 2] = r[5,3]
matrix matrix1_domesticIO[10, 3] = r[6,3]
matrix matrix1_domesticIO[11, 1] = r[1,4] // negative attitude toward Russia  
matrix matrix1_domesticIO[11, 2] = r[5,4]
matrix matrix1_domesticIO[11, 3] = r[6,4]
matrix list matrix1_domesticIO


***************************************************************

*** 6. Western frame, DOMESTIC POLICY / IO ONLY

***************************************************************

matrix matrix2_domesticIO = J(11,3,.) // 3 column for lower ci, estimate, upper ci

*Average effect, experiments on domestic policy / IOs
mixed poolexp i.treat_exp `controls1' `controls2a'   || lfdn: if exp_issuetype == 0
mat r=r(table)
matrix list r
matrix matrix2_domesticIO[1, 1] = r[1,4]
matrix matrix2_domesticIO[1, 2] = r[5,4]
matrix matrix2_domesticIO[1, 3] = r[6,4]
matrix list matrix2_domesticIO

*By authoritarian beliefs, experiments on domestic policy / IOs
mixed poolexp i.treat_exp##c.authoritarian `controls1' `controls2b'		|| lfdn: if exp_issuetype == 0
margins, dydx(4.treat_exp) at(authoritarian=(.83 .29)) // predicted for 5 and 95 percent percentile
mat r=r(table)
matrix list r
matrix matrix2_domesticIO[2, 1] = r[1,3] // strong authoritarian beliefs
matrix matrix2_domesticIO[2, 2] = r[5,3]
matrix matrix2_domesticIO[2, 3] = r[6,3]
matrix matrix2_domesticIO[3, 1] = r[1,4] // weak authoritarian beliefs
matrix matrix2_domesticIO[3, 2] = r[5,4]
matrix matrix2_domesticIO[3, 3] = r[6,4]
matrix list matrix2_domesticIO

*By conspiracy theory beliefs, experiments on domestic policy / IOs
mixed poolexp i.treat_exp##c.conspiracy_sum `controls1' `controls2c'   || lfdn:  if exp_issuetype == 0
margins, dydx(4.treat_exp) at(conspiracy_sum=(.8 .05)) // predicted for 5 and 95 percent percentile
mat r=r(table)
matrix list r
matrix matrix2_domesticIO[4, 1] = r[1,3] // high conspiracy theory score
matrix matrix2_domesticIO[4, 2] = r[5,3]
matrix matrix2_domesticIO[4, 3] = r[6,3]
matrix matrix2_domesticIO[5, 1] = r[1,4] // low conspiracy theory score
matrix matrix2_domesticIO[5, 2] = r[5,4]
matrix matrix2_domesticIO[5, 3] = r[6,4]
matrix list matrix2_domesticIO

*By political knowledge, experiments on domestic policy / IOs
mixed poolexp i.treat_exp##c.know_sum `controls1' `controls2d'   || lfdn: if exp_issuetype == 0
margins, dydx(4.treat_exp) at(know_sum=(0 .875)) // predicted for 5 and 95 percent percentile
mat r=r(table)
matrix list r
matrix matrix2_domesticIO[6, 1] = r[1,3] // high political knowledge
matrix matrix2_domesticIO[6, 2] = r[5,3]
matrix matrix2_domesticIO[6, 3] = r[6,3]
matrix matrix2_domesticIO[7, 1] = r[1,4] // low political knowledge
matrix matrix2_domesticIO[7, 2] = r[5,4]
matrix matrix2_domesticIO[7, 3] = r[6,4]
matrix list matrix2_domesticIO

*By attitudes toward German government, experiments on domestic policy / IOs
mixed poolexp i.treat_exp##c.pred_bundes_gov_r `controls1' `controls2e'  || lfdn: if exp_issuetype == 0
margins, dydx(4.treat_exp) at(pred_bundes_gov_r=(0 .9)) // predicted for 5 and 95 percent percentile
mat r=r(table)
matrix list r
matrix matrix2_domesticIO[8, 1] = r[1,3] // government opponents
matrix matrix2_domesticIO[8, 2] = r[5,3]
matrix matrix2_domesticIO[8, 3] = r[6,3]
matrix matrix2_domesticIO[9, 1] = r[1,4] // government supporters
matrix matrix2_domesticIO[9, 2] = r[5,4]
matrix matrix2_domesticIO[9, 3] = r[6,4]
matrix list matrix2_domesticIO

*By attitudes toward Russia, experiments on domestic policy / IOs
mixed poolexp i.treat_exp##c.pred_Russia_r `controls1' `controls2f'   || lfdn: if exp_issuetype == 0
margins, dydx(4.treat_exp) at(pred_Russia_r=(.8 .0 )) // predicted for 5 and 95 percent percentile
mat r=r(table)
matrix list r
matrix matrix2_domesticIO[10, 1] = r[1,3] // positive attitude toward Russia 
matrix matrix2_domesticIO[10, 2] = r[5,3]
matrix matrix2_domesticIO[10, 3] = r[6,3]
matrix matrix2_domesticIO[11, 1] = r[1,4] // negative attitude toward Russia  
matrix matrix2_domesticIO[11, 2] = r[5,4]
matrix matrix2_domesticIO[11, 3] = r[6,4]
matrix list matrix2_domesticIO


***************************************************************

*** 7. Russian frame + Sourcing, DOMESTIC POLICY / IO ONLY

***************************************************************

matrix matrix1_source_domesticIO = J(11,3,.) // 3 column for lower ci, estimate, upper ci

*Average effect, experiments on domestic policy / IOs
mixed poolexp i.treat_exp `controls1' `controls2a'   || lfdn: if exp_issuetype == 0
mat r=r(table)
matrix list r
matrix matrix1_source_domesticIO[1, 1] = r[1,3]
matrix matrix1_source_domesticIO[1, 2] = r[5,3]
matrix matrix1_source_domesticIO[1, 3] = r[6,3]
matrix list matrix1_source_domesticIO

*By authoritarian beliefs, experiments on domestic policy / IOs
mixed poolexp i.treat_exp##c.authoritarian `controls1' `controls2b'		|| lfdn: if exp_issuetype == 0
margins, dydx(3.treat_exp) at(authoritarian=(.83 .29)) // predicted for 5 and 95 percent percentile
mat r=r(table)
matrix list r
matrix matrix1_source_domesticIO[2, 1] = r[1,3] // strong authoritarian beliefs
matrix matrix1_source_domesticIO[2, 2] = r[5,3]
matrix matrix1_source_domesticIO[2, 3] = r[6,3]
matrix matrix1_source_domesticIO[3, 1] = r[1,4] // weak authoritarian beliefs
matrix matrix1_source_domesticIO[3, 2] = r[5,4]
matrix matrix1_source_domesticIO[3, 3] = r[6,4]
matrix list matrix1_source_domesticIO

*By conspiracy theory beliefs, experiments on domestic policy / IOs
mixed poolexp i.treat_exp##c.conspiracy_sum `controls1' `controls2c'   || lfdn: if exp_issuetype == 0
margins, dydx(3.treat_exp) at(conspiracy_sum=(.8 .05)) // predicted for 5 and 95 percent percentile
mat r=r(table)
matrix list r
matrix matrix1_source_domesticIO[4, 1] = r[1,3] // high conspiracy theory score
matrix matrix1_source_domesticIO[4, 2] = r[5,3]
matrix matrix1_source_domesticIO[4, 3] = r[6,3]
matrix matrix1_source_domesticIO[5, 1] = r[1,4] // low conspiracy theory score
matrix matrix1_source_domesticIO[5, 2] = r[5,4]
matrix matrix1_source_domesticIO[5, 3] = r[6,4]
matrix list matrix1_source_domesticIO

*By political knowledge, experiments on domestic policy / IOs
mixed poolexp i.treat_exp##c.know_sum `controls1' `controls2d'   || lfdn: if exp_issuetype == 0
margins, dydx(3.treat_exp) at(know_sum=(0 .875)) // predicted for 5 and 95 percent percentile
mat r=r(table)
matrix list r
matrix matrix1_source_domesticIO[6, 1] = r[1,3] // high political knowledge
matrix matrix1_source_domesticIO[6, 2] = r[5,3]
matrix matrix1_source_domesticIO[6, 3] = r[6,3]
matrix matrix1_source_domesticIO[7, 1] = r[1,4] // low political knowledge
matrix matrix1_source_domesticIO[7, 2] = r[5,4]
matrix matrix1_source_domesticIO[7, 3] = r[6,4]
matrix list matrix1_source_domesticIO

*By attitudes toward German government, experiments on domestic policy / IOs
mixed poolexp i.treat_exp##c.pred_bundes_gov_r `controls1' `controls2e'   || lfdn: if exp_issuetype == 0
margins, dydx(3.treat_exp) at(pred_bundes_gov_r=(0 .9)) // predicted for 5 and 95 percent percentile
mat r=r(table)
matrix list r
matrix matrix1_source_domesticIO[8, 1] = r[1,3] // government opponents
matrix matrix1_source_domesticIO[8, 2] = r[5,3]
matrix matrix1_source_domesticIO[8, 3] = r[6,3]
matrix matrix1_source_domesticIO[9, 1] = r[1,4] // government supporters
matrix matrix1_source_domesticIO[9, 2] = r[5,4]
matrix matrix1_source_domesticIO[9, 3] = r[6,4]
matrix list matrix1_source_domesticIO

*By attitudes toward Russia, experiments on domestic policy / IOs
mixed poolexp i.treat_exp##c.pred_Russia_r `controls1' `controls2f'   || lfdn: if exp_issuetype == 0
margins, dydx(3.treat_exp) at(pred_Russia_r=(.8 .0 )) // predicted for 5 and 95 percent percentile
mat r=r(table)
matrix list r
matrix matrix1_source_domesticIO[10, 1] = r[1,3] // positive attitude toward Russia 
matrix matrix1_source_domesticIO[10, 2] = r[5,3]
matrix matrix1_source_domesticIO[10, 3] = r[6,3]
matrix matrix1_source_domesticIO[11, 1] = r[1,4] // negative attitude toward Russia  
matrix matrix1_source_domesticIO[11, 2] = r[5,4]
matrix matrix1_source_domesticIO[11, 3] = r[6,4]
matrix list matrix1_source_domesticIO



***************************************************************

*** 8. Western frame + Sourcing, DOMESTIC POLICY / IO ONLY

***************************************************************

matrix matrix2_source_domesticIO = J(11,3,.) // 3 column for lower ci, estimate, upper ci

*Average effect, experiments on domestic policy / IOs
mixed poolexp i.treat_exp `controls1' `controls2a'   || lfdn: if exp_issuetype == 0
mat r=r(table)
matrix list r
matrix matrix2_source_domesticIO[1, 1] = r[1,5]
matrix matrix2_source_domesticIO[1, 2] = r[5,5]
matrix matrix2_source_domesticIO[1, 3] = r[6,5]
matrix list matrix2_source_domesticIO

*By authoritarian beliefs, experiments on domestic policy / IOs
mixed poolexp i.treat_exp##c.authoritarian `controls1' `controls2b'		|| lfdn: if exp_issuetype == 0
margins, dydx(5.treat_exp) at(authoritarian=(.83 .29)) // predicted for 5 and 95 percent percentile
mat r=r(table)
matrix list r
matrix matrix2_source_domesticIO[2, 1] = r[1,3] // strong authoritarian beliefs
matrix matrix2_source_domesticIO[2, 2] = r[5,3]
matrix matrix2_source_domesticIO[2, 3] = r[6,3]
matrix matrix2_source_domesticIO[3, 1] = r[1,4] // weak authoritarian beliefs
matrix matrix2_source_domesticIO[3, 2] = r[5,4]
matrix matrix2_source_domesticIO[3, 3] = r[6,4]
matrix list matrix2_source_domesticIO

*By conspiracy theory beliefs, experiments on domestic policy / IOs
mixed poolexp i.treat_exp##c.conspiracy_sum `controls1' `controls2c'   || lfdn: if exp_issuetype == 0
margins, dydx(5.treat_exp) at(conspiracy_sum=(.8 .05)) // predicted for 5 and 95 percent percentile
mat r=r(table)
matrix list r
matrix matrix2_source_domesticIO[4, 1] = r[1,3] // high conspiracy theory score
matrix matrix2_source_domesticIO[4, 2] = r[5,3]
matrix matrix2_source_domesticIO[4, 3] = r[6,3]
matrix matrix2_source_domesticIO[5, 1] = r[1,4] // low conspiracy theory score
matrix matrix2_source_domesticIO[5, 2] = r[5,4]
matrix matrix2_source_domesticIO[5, 3] = r[6,4]
matrix list matrix2_source_domesticIO

*By political knowledge, experiments on domestic policy / IOs
mixed poolexp i.treat_exp##c.know_sum `controls1' `controls2d'   || lfdn: if exp_issuetype == 0
margins, dydx(5.treat_exp) at(know_sum=(0 .875)) // predicted for 5 and 95 percent percentile
mat r=r(table)
matrix list r
matrix matrix2_source_domesticIO[6, 1] = r[1,3] // high political knowledge
matrix matrix2_source_domesticIO[6, 2] = r[5,3]
matrix matrix2_source_domesticIO[6, 3] = r[6,3]
matrix matrix2_source_domesticIO[7, 1] = r[1,4] // low political knowledge
matrix matrix2_source_domesticIO[7, 2] = r[5,4]
matrix matrix2_source_domesticIO[7, 3] = r[6,4]
matrix list matrix2_source_domesticIO

*By attitudes toward German government, experiments on domestic policy / IOs
mixed poolexp i.treat_exp##c.pred_bundes_gov_r `controls1' `controls2e'   || lfdn: if exp_issuetype == 0
margins, dydx(5.treat_exp) at(pred_bundes_gov_r=(0 .9)) // predicted for 5 and 95 percent percentile
mat r=r(table)
matrix list r
matrix matrix2_source_domesticIO[8, 1] = r[1,3] // government opponents
matrix matrix2_source_domesticIO[8, 2] = r[5,3]
matrix matrix2_source_domesticIO[8, 3] = r[6,3]
matrix matrix2_source_domesticIO[9, 1] = r[1,4] // government supporters
matrix matrix2_source_domesticIO[9, 2] = r[5,4]
matrix matrix2_source_domesticIO[9, 3] = r[6,4]
matrix list matrix2_source_domesticIO

*By attitudes toward Russia, experiments on domestic policy / IOs
mixed poolexp i.treat_exp##c.pred_Russia_r `controls1' `controls2f'   || lfdn: if exp_issuetype == 0
margins, dydx(5.treat_exp) at(pred_Russia_r=(.8 .0 )) // predicted for 5 and 95 percent percentile
mat r=r(table)
matrix list r
matrix matrix2_source_domesticIO[10, 1] = r[1,3] // positive attitude toward Russia 
matrix matrix2_source_domesticIO[10, 2] = r[5,3]
matrix matrix2_source_domesticIO[10, 3] = r[6,3]
matrix matrix2_source_domesticIO[11, 1] = r[1,4] // negative attitude toward Russia  
matrix matrix2_source_domesticIO[11, 2] = r[5,4]
matrix matrix2_source_domesticIO[11, 3] = r[6,4]
matrix list matrix2_source_domesticIO





*** Plot Russian side, by type of experiment
coefplot (matrix(matrix1_foreign[,1]), ci((matrix1_foreign[,2] matrix1_foreign[,3]))) (matrix(matrix1_source_foreign[,1]), ci((matrix1_source_foreign[,2] matrix1_source_foreign[,3]))), bylabel("Foreign policy" "experiments") ///
       || (matrix(matrix1_domesticIO[,1]), ci((matrix1_domesticIO[,2] matrix1_domesticIO[,3]))) (matrix(matrix1_source_domesticIO[,1]), ci((matrix1_source_domesticIO[,2] matrix1_source_domesticIO[,3]))), bylabel("Domestic policy/" "IO experiments") ///
       ||, scheme(s1mono) drop(_cons) xline(0)  ///
		headings(r2 = "By authoritarian beliefs" r4 = "By belief in conspiracy theories" r6 = "By political knowledge" r8 = "By attitude twd German government" r10 = "By attitude twd Russia ") ///
		coeflabels(r1="Total sample" r2="Strong" r3="Weak" r4="Strong" r5="Weak" r6="Low" r7="High" r8="Negative" r9="Positive" r10="Positive" r11="Negative" )  name(Fig4, replace) ///
		xscale(range(-.2 (.2) .6)) xlabel(-.5 (.2) .6)
addplot 1: , legend(order(2 "Anti-mainstream frame only" 4 "Anti-mainstream frame + source") size(small)) norescaling

*capture graph export Fig4.pdf, replace
*NOTE: The position of the legend in Fig4 was edited by hand for the published paper 


*** Plot Western side, by type of experiment
coefplot (matrix(matrix2_foreign[,1]), ci((matrix2_foreign[,2] matrix2_foreign[,3]))) (matrix(matrix2_source_foreign[,1]), ci((matrix2_source_foreign[,2] matrix2_source_foreign[,3]))), bylabel("Foreign policy" "experiments") ///
       || (matrix(matrix2_domesticIO[,1]), ci((matrix2_domesticIO[,2] matrix2_domesticIO[,3]))) (matrix(matrix2_source_domesticIO[,1]), ci((matrix2_source_domesticIO[,2] matrix2_source_domesticIO[,3]))), bylabel("Domestic policy/" "IO experiments") ///
       ||, scheme(s1mono)  drop(_cons) xline(0)  ///
		headings(r2 = "By authoritarian beliefs" r4 = "By belief in conspiracy theories" r6 = "By political knowledge" r8 = "By attitude twd German government" r10 = "By attitude twd Russia ") ///
		coeflabels(r1="Total sample" r2="Strong" r3="Weak" r4="Strong" r5="Weak" r6="Low" r7="High" r8="Negative" r9="Positive" r10="Positive" r11="Negative" )  name(Fig5, replace) ///
		xscale(range(-.2 (.2) .6)) xlabel(-.5 (.2) .6)
addplot 1: , legend(order(2 "Mainstream frame only" 4 "Mainstream frame + source") size(small)) norescaling

*capture graph export Fig5.pdf, replace
*NOTE: The position of the legend in Fig5 was edited by hand for the published paper